更多细节请到 「Prove001」 中查看
素数
例题
暴力 ($O(n\sqrt{n})$)
1 | bool Prime[MAXN]; |
埃式筛法 ($O(n\log n)$)
1 | bool vis[MAXN]; |
欧拉筛法 ($O(n)$)
1 | bool vis[MAXN]; |
欧拉函数
定义
$\varphi$($x$) 表示求在 $1 $ 到 $ x$ 的整数中有多少个数与 $x$ 互质
直接求 $\varphi$ ($n$) ($O(\sqrt{n})$)
1 | int FindPhi(int n) |
同时求 $\varphi$ ($1$) 到 $\varphi$ ($n$)时与 $1$ 到 $n$ 的素数 ($O(n)$)
1 | bool vis[MAXN]; |
约数
例题
辗转相除法
1 | int GCD(int a,int b) |
二进制算法
1 | int GCD(int x,int y) |
1 |
|
乘法逆元
解决的问题
求下面关于 $x$ 的同余方程的整数解
例题
代码
1 | long long exgcd(long long a,long long b,long long &x,long long &y) |
1 | long long fastpow(long long a,long long b,long long p) //a^b%p |
1 | inv[1]=1; |
欧几里得(拓展)
解决的问题
求下面关于 $x,y$ 的不定方程的整数解
代码
1 | long long exGCD(long long a,long long b,long long &x,long long &y) |
中国剩余定理
解决的问题
已知关于 $x$ 的同余方程组
并且
求整数解 $x$
例题
代码
1 | long long CRT(void) |
中国剩余定理(拓展)
解决的问题
已知关于 $x$ 的同余方程组
并且
求整数解 $x$
例题
代码
1 | long long exCRT(void) |
BSGS
解决的问题
已知关于 $x$ 的方程
并且
已知 $a,b,p$,求整数 $x$
例题
代码
1 | long long BSGS(long long a,long long b,long long p) |
BSGS(拓展)
解决的问题
已知关于 $x$ 的方程
并且
已知 $a,b,p$,求整数 $x$
例题
代码
1 | long long inv(long long a,long long p) |